<?php

/**
 * Controlardor de gestión de usuarios
 *
 */
class controlador_administradores {

    /**
     * Metodo para mostrar la vista de administrador
     */
    public function inicio_administrador() {
        if ($_SESSION['weokey_publicidad_tipo_usuario'] == md5('administrador')) {
            $obj_comercial = new Comercial();
            $num_comerciales = $obj_comercial->obtener_numero_comerciales();
            $params_comerciales = $obj_comercial->obtener_ultimos_comerciales();
            $obj_cliente = new Cliente();
            $num_clientes = $obj_cliente->obtener_numero_clientes();
            $params_clientes = $obj_cliente->obtener_ultimos_clientes();
            $obj_anuncio = new Anuncio();
            $num_anuncios = $obj_anuncio->obtener_numero_anuncios();
            $params_anuncios = $obj_anuncio->obtener_ultimos_anuncios();

            require 'app/views/inicio_administradores.php';
        } else {
            header('location:inicio');
        }
    }

    /**
     * Formulario de registro y regitrar al usuario en bd
     */
    public function registrar() {
        if ($_SERVER['REQUEST_METHOD'] == 'POST') {

            header('location:inicio');
        } else {
            require 'app/views/registrar.php';
        }
    }

    /**
     * Formulario para editar usuario
     */
    public function editar() {
        if ($_SERVER['REQUEST_METHOD'] == 'POST') {

            header('location:usuario');
        } else {
            header('location:usuario/error:1');
        }
    }

    /**
     * Función que comprueba si existe un usuario con el email que recibo por post desde ajax
     * @return devuelve con echo si existe o no el un usuario
     */
    public function comprobacion_email_existente() {
        $obj_usuario = new Usuario();

        if ($obj_usuario->existe_usuario_email($_POST['email'])) {
            echo 'existe';
        } else {
            echo 'no existe';
        }
    }

    /**
     * Función que comprueba si existe un usuario con el nombre de usuario que recibo por post desde ajax
     * @return devuelve con echo si existe o no el un usuario
     */
    public function comprobacion_nombre_usuario_existente() {
        $obj_usuario = new Usuario();

        if ($obj_usuario->existe_nombre_usuario($_POST['usuario'])) {
            echo 'existe';
        } else {
            echo 'no existe';
        }
    }

    /**
     * Formulario de login
     */
    public function login() {
        $obj_usuario = new Administrador();
        if ($obj_usuario->comprobar_login_administrador($_POST['email'], $_POST['password'])) {
            //Creamos la variable de sesión del usuario
            $_SESSION['weokey_publicidad_usuario'] = md5($_POST['email']);
            header('location:ver_administrador');
        } else {
            header('location:inicio_login/error:1');
            die();
        }
    }

    /**
     * Cambiar clave del comercial
     */
    public function cambiar_clave() {
        $password = $_POST['password'];
        $confirm_password = $_POST['confirm_password'];

        if ($password == $confirm_password) {
            $obj_administrador = new Administrador();
            $obj_administrador->cambiar_clave($_SESSION['weokey_publicidad_usuario_id'], $password);
            $_SESSION['publicidad_msj'] = 'Contraseña cambiada correctamente.';
            header('location:perfil');
        } else {
            //si la contraseña no es igual
            $_SESSION['publicidad_msj'] = 'La contraseña no coincide.';
            header('location:perfil');
        }
    }

    /**
     * Formulario de login
     */
    public function inicio_login() {
        require 'app/views/inicio_login.php';
    }

    /**
     * Formulario de logout
     */
    public function logout() {
        session_destroy(); //Borra todas las variables de sesión
        header('location:inicio_login');
    }

}
?>
